package com.relytosoft.mizar.media.display.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.relytosoft.dubhe.common.core.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 视频预览常用配置
 *
 * @author hj
 * @version 1.0
 * @date 2022/4/13 14:24
 * @ClassName VideoConfig
 */

@TableName("VID_VIDEO_CONFIG")
@ApiModel("视频预览常用配置")
public class VideoConfig extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value="ID", type= IdType.AUTO)
    @ApiModelProperty(value = "主键id")
    private Integer id;

    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID")
    @TableField("USER_ID")
    @NotNull(message = "用户ID不能为空")
    private Integer userId;

    /**
     * 保存位置
     */
    @ApiModelProperty(value = "保存位置")
    @TableField("SAVE_PATH")
    private String savePath = "D:/relytosoft/display";

    /**
     * 图片格式
     */
    @ApiModelProperty(value = "图片格式",notes = "字典字段PHOTOFORMAT,1000-JPEG,1001-BMP")
    @TableField("PHOTO_FORMAT")
    private Integer photoFormat = 1000;

    /**
     * 抓图方式
     */
    @ApiModelProperty(value = "抓图方式",notes = "字典字段CAPTUREMODE，1000-单张，1001-按时间，1002-按帧")
    @TableField("CAPTURE_MODE")
    private Integer captureMode = 1000;

    /**
     * 文件大小
     */
    @ApiModelProperty(value = "文件大小",notes = "字典字段FILESIZE，1000-256MB,1001-512MB,1002-1GB,1003-2GB")
    @TableField("FILE_SIZE")
    private Integer fileSize = 1000;

    /**
     * 码流自适应
     */
    @ApiModelProperty(value = "码流自适应")
    @TableField("CODE_STREAM")
    private Integer codeStream = 1;

    /**
     * 记忆预览窗口
     */
    @ApiModelProperty(value = "记忆预览窗口")
    @TableField("MEMORY_WINDOW")
    private Integer memoryWindow = 0;

    /**
     * 过滤离线点位
     */
    @ApiModelProperty(value = "过滤离线点位")
    @TableField("FILTER_OFFLINE")
    private Integer filterOffline = 0;

    /**
     * 是否开启图片预览
     */
    @ApiModelProperty(value = "是否开启图片预览")
    @TableField("PICTURE_PREVIEW")
    private Integer picturePreview = 0;

    /**
     * 自适应画面布局
     */
    @ApiModelProperty(value = "自适应画面布局")
    @TableField("PICTURE_LAYOUT")
    private Integer pictureLayout = 0;

    /**
     * 保留字段
     */
    @ApiModelProperty(value = "保留字段")
    @TableField("RESERVE")
    private String reserve;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    @TableField("STATUS")
    private Integer status = 1;

    public VideoConfig() {
    }

    /**
     * 获得主键id
     */
    public Integer getId(){
        return this.id;
    }
    /**
     * 设置主键id
     */
    public void setId(Integer id){
        this.id = id;
    }

    /**
     * 获得用户ID
     */
    public Integer getUserId(){
        return this.userId;
    }
    /**
     * 设置用户ID
     */
    public void setUserId(Integer userId){
        this.userId = userId;
    }

    /**
     * 获得保存位置
     */
    public String getSavePath(){
        return this.savePath;
    }
    /**
     * 设置保存位置
     */
    public void setSavePath(String savePath){
        this.savePath = savePath;
    }

    /**
     * 获得图片格式
     */
    public Integer getPhotoFormat(){
        return this.photoFormat;
    }
    /**
     * 设置图片格式
     */
    public void setPhotoFormat(Integer photoFormat){
        this.photoFormat = photoFormat;
    }

    /**
     * 获得抓图方式
     */
    public Integer getCaptureMode(){
        return this.captureMode;
    }
    /**
     * 设置抓图方式
     */
    public void setCaptureMode(Integer captureMode){
        this.captureMode = captureMode;
    }

    /**
     * 获得文件大小
     */
    public Integer getFileSize(){
        return this.fileSize;
    }
    /**
     * 设置文件大小
     */
    public void setFileSize(Integer fileSize){
        this.fileSize = fileSize;
    }

    /**
     * 获得码流自适应
     */
    public Integer getCodeStream(){
        return this.codeStream;
    }
    /**
     * 设置码流自适应
     */
    public void setCodeStream(Integer codeStream){
        this.codeStream = codeStream;
    }

    /**
     * 获得记忆预览窗口
     */
    public Integer getMemoryWindow(){
        return this.memoryWindow;
    }
    /**
     * 设置记忆预览窗口
     */
    public void setMemoryWindow(Integer memoryWindow){
        this.memoryWindow = memoryWindow;
    }

    /**
     * 获得过滤离线点位
     */
    public Integer getFilterOffline(){
        return this.filterOffline;
    }
    /**
     * 设置过滤离线点位
     */
    public void setFilterOffline(Integer filterOffline){
        this.filterOffline = filterOffline;
    }

    /**
     * 获得是否开启图片预览
     */
    public Integer getPicturePreview(){
        return this.picturePreview;
    }
    /**
     * 设置是否开启图片预览
     */
    public void setPicturePreview(Integer picturePreview){
        this.picturePreview = picturePreview;
    }

    /**
     * 获得自适应画面布局
     */
    public Integer getPictureLayout(){
        return this.pictureLayout;
    }
    /**
     * 设置自适应画面布局
     */
    public void setPictureLayout(Integer pictureLayout){
        this.pictureLayout = pictureLayout;
    }

    /**
     * 获得保留字段
     */
    public String getReserve(){
        return this.reserve;
    }
    /**
     * 设置保留字段
     */
    public void setReserve(String reserve){
        this.reserve = reserve;
    }

    /**
     * 获得状态
     */
    public Integer getStatus(){
        return this.status;
    }
    /**
     * 设置状态
     */
    public void setStatus(Integer status){
        this.status = status;
    }



    @Override
    public String toString() {
        return "Config{id="+id+
                ",userId="+userId+
                ",savePath="+savePath+
                ",photoFormat="+photoFormat+
                ",captureMode="+captureMode+
                ",fileSize="+fileSize+
                ",codeStream="+codeStream+
                ",memoryWindow="+memoryWindow+
                ",filterOffline="+filterOffline+
                ",picturePreview="+picturePreview+
                ",pictureLayout="+pictureLayout+
                ",reserve="+reserve+
                ",status="+status+
                "}";
    }
}
